package du.myseckill.service;

import du.myseckill.dto.SeckillExcecution;
import du.myseckill.exception.ServerException;

public interface GoodsService {
    public SeckillExcecution executeSecKillAOPLock(long goodsId, Long userId, Long userPhone, String md5) throws ServerException;

    public SeckillExcecution executeSecKillAOPRedisLock(long goodsId, Long userId, Long userPhone, String md5) throws ServerException;

    public SeckillExcecution executeSecKillDBPLock(long goodsId, Long userId, Long userPhone, String md5) throws ServerException;

    public SeckillExcecution executeSecKillDBOLock(long goodsId, Long userId, Long userPhone, String md5) throws ServerException;

    public SeckillExcecution executeSecKillByMQ(long goodsId, Long userId, Long userPhone, String md5) throws ServerException;
}
